package com.kalvan.core.mybatis;

import com.kalvan.core.mybatis.sharding.ShardingMapper;
import org.apache.ibatis.annotations.Param;
import tk.mybatis.mapper.annotation.RegisterMapper;

import java.util.List;
import java.util.Map;

/**
 * 继承自己的MyMapper 特别注意，该接口不能被扫描到，否则会出错
 *
 * @author chenliang
 */
@RegisterMapper
public interface IBaseMapper<T> extends ShardingMapper<T> {
    /**
     * 分页查询
     *
     * @param params 查询参数
     * @return List
     */
    List<T> queryPage(@Param("params") Map<String, String> params);

    /**
     * 汇总查询
     *
     * @param params 查询参数
     * @return Map
     */
    Map<String, String> querySum(@Param("params") Map<String, String> params);
}
